#ifndef __I_CROSSFIRE_DEVICEENGINE_H_
#define __I_CROSSFIRE_DEVICEENGINE_H_

#include "ISceneNode.h"
#include "ISceneManager.h"
#include "IObject.h"
#include "ITimer.h"
#include "IWindow.h"
#include "ILog.h"
#include "ISettings.h"
#include "IDrawRenderer.h"
#include "Iinput.h"

namespace cfe
{


class ICF_DeviceEngine : public ICF_Object
{
public:
//	virtual ICF_DeviceEngine() = 0;
	virtual ICF_Timer* getTimerObject() = 0;
	virtual ICF_Window* getWindowObject() = 0;
	virtual ICF_Log* getLogObject(const char* filename = STD_LOG_NAME) = 0;
	virtual ICF_Settings* getSettingsObject() = 0;
	virtual ICF_DrawRenderer* getDrawRenderer() = 0;
	virtual ICF_Input* getInput() = 0;
	virtual ICF_SceneManager* getSceneManager() = 0;
};

};

#endif